n=int(input())
def minSteps(n):
    #初始时A的数量
    cur_A_num=1
    #初始化每次粘贴可以给予的数量
    p_num=1
    #要进行的操作次数,初始化为1
    count=1
    if n==1:
        return 0
    while cur_A_num<n:
        #加上赋值字符
        cur_A_num+=p_num
        print(cur_A_num)
        count+=1
        if cur_A_num*2<=n:
            if cur_A_num%2==0 and n%2!=0:
                continue
            else:
                p_num=cur_A_num
                count+=1
    return count
print(minSteps(n))


